Numerous types of information arrive in the form of a stream. Examples include video and audio as well as data generated by medical sensors such as electroencephalogram (EEG) or electrocardiogram (ECG) data, and the like.
These data streams frequently require processing before they can be stored or reviewed. Many existing systems have been built to process and manage streaming data. Often these systems flow the stream of data through a graph of processing elements, each step in the graph applying a different type of processing logic that yields some form of an analytic result.
However, it has been realized that a need exists to determine precisely what sequence of processing elements participated in the generation of an analysis result and what stream data samples contributed to the generation of the analysis result. These are called respectively the process provenance and the data provenance of the analysis result.